package
{
	import com.yzy.loader.DataLoader;
	import com.yzy.tool.ReadFile;
	
	import flash.display.Sprite;
	import flash.filesystem.File;
	import flash.filesystem.FileMode;
	import flash.filesystem.FileStream;
	import flash.net.URLLoaderDataFormat;
	import flash.sampler.getSize;
	
	public class YZYAnalysis extends Sprite
	{
		private var numVer:Vector.<NumObj>;
		
		
		
		public function YZYAnalysis()
		{
//			trace(ReadFile.ExtractProperty("cqss.txt"));
			DataLoader.loaderData("sd11x5.txt",loaderComplete,loaderProgress,URLLoaderDataFormat.TEXT);
		}
		
		private function loaderComplete(data:String):void
		{
			numVer=ReadFile.strToVector(data,NumObj,Vector.<NumObj>) as Vector.<NumObj>;	
//			trace(getSize(numVer));
//			var num:Vector.<int>=new Vector.<int>(5);
//			var jnum:Vector.<Vector.<int>>=new Vector.<Vector.<int>>()
//			for (var i:int = 0; i < 55440; i++) 
//			{
//				jnum.push(num);
//			}
//			trace(getSize(jnum));
				//myfun2();
			//ff4();
//			for (var i:int = 1; i <= 6; i++) 
//			{
//				initnum.push(i);
//			}
			
			//trace(numVer.length)
			
			createAllNum();
			
//			var a1:String="1,2,3";
//			var a2:String="1,2,3,4"
//			trace(a1==a2)
			
			bidui();
			
//			for (var i:int = 0; i < numVer.length; i++) 
//			{
//				if(numVer[i].number=="01 02 03 04 05"){
//					trace(numVer[i].date);
//				}
//			}
			
			writeFile();
		}
		
		private function loaderProgress(bytesTotal:Number,bytesLoaded:Number):void{
		
		}
		
//		private var initnum:Vector.<Vector.<int>>=new Vector.<Vector.<int>>();
		private var allnumS:Vector.<String>=new Vector.<String>();
		private var paochuArr:Vector.<String>=new Vector.<String>();
		private function createAllNum():void{
//			trace(initnum.length)
			var maxNum:int=11;
			var minNum:int=1;
			for (var a:int = minNum; a <= maxNum; a++) 
			{
				for (var b:int = minNum; b <= maxNum; b++) 
				{
					for (var c:int = minNum; c <= maxNum; c++) 
					{
						for (var d:int = minNum; d <= maxNum; d++) 
						{
							for (var e:int = minNum; e <= maxNum; e++) 
							{
									if(a!=b && a!=c && a!=d && a!=e  && b!=c && b!=d && b!=e  && c!=d && c!=e  && d!=e){
//										var numarr:Vector.<int>=new Vector.<int>();
//										numarr.push(a);
//										numarr.push(b);
//										numarr.push(c);
//										numarr.push(d);
//										numarr.push(e);
//										initnum.push(numarr);
										
										var nums:String=new String();
										if(a<10){
											nums+="0"+a+" "
										}else{
											nums+=a+" "
										}
										if(b<10){
											nums+="0"+b+" "
										}else{
											nums+=b+" "
										}
										if(c<10){
											nums+="0"+c+" "
										}else{
											nums+=c+" "
										}
										if(d<10){
											nums+="0"+d+" "
										}else{
											nums+=d+" "
										}
										if(e<10){
											nums+="0"+e;
										}else{
											nums+=String(e);
										}
										allnumS.push(nums);
//										if(nums=="01 02 03 04 05"){
//											trace(allnumS.length);	
//										}
										
									}
							}
							
						}
					}
				}
				
			}
//			trace(allnumS.length);
//			
//			for (var i:int = 0; i < 10; i++) 
//			{
//				trace(allnumS[i])
//			}
			
//			var file:File = File.desktopDirectory.resolvePath("allnumS.txt")  //尝试从系统桌面获取test.xml文件。 
//			var fileStream:FileStream = new FileStream(); // 创建FileStream 对象，用于读写文件 
//			fileStream.open(file,FileMode.WRITE);  //以WRITE方式打开file, 如果file中对应的文件不存在，创建新文件
//			
//						for (var i:int = 0; i < allnumS.length; i++) 
//						{
//							fileStream.writeUTFBytes(allnumS[i]+"\r\n");
//						}
//			fileStream.close(); //完成写入，这时我们打开桌面的test.txt可以看到内容。 
			
//			trace("complete allnums")
		} 
		
		 
		private function bidui():void{
			for (var i:int = allnumS.length-1; i >=0 ; i--) 
			{
				switch(i)
				{
					case 50000:
					{
						trace(i)	
						break;
					}
					case 40000:
					{
						trace(i)	
						break;
					}
					case 30000:
					{
						trace(i)	
						break;
					}
					case 20000:
					{
						trace(i)	
						break;
					}
					case 10000:
					{
						trace(i)	
						break;
					}	
					default:
					{
						break;
					}
				}
				
				
				for (var j:int = 0; j < numVer.length; j++) 
				{
					if(allnumS[i]==numVer[j].number){
						paochuArr.push(allnumS.splice(i,1));
						break;
					}
				}
			}
//			trace(numVer[0].number)
//			trace(allnumS[6017])
//			trace(numVer[0].number==allnumS[6017])
//			for (var i:int = 0; i < numVer.length; i++) 
//			{
//				if(allnumS[6017]==numVer[i].number){
//					trace(numVer[i].number);
//					trace(numVer[i].date);
//					break;
//				}
//			}
			
			
//			trace(allnumS.length);
			
//			for (var k:int = 0; k < 100; k++) 
//			{
//				trace(allnumS[k]);
//			}
			
		}
		
		
		
		private function writeFile():void{
			//var _url:String= "test.txt";
			//var file:File = File.desktopDirectory.resolvePath("test.xml")
//			var file:File = new File();
			//file.nativePath=_url; 
			//var stream:FileStream=new FileStream;
			//stream.open(file, FileMode.WRITE);
			
			
			var file:File = File.desktopDirectory.resolvePath("disappearNum.txt")  //尝试从系统桌面获取test.xml文件。 
			var fileStream:FileStream = new FileStream(); // 创建FileStream 对象，用于读写文件 
			fileStream.open(file,FileMode.WRITE);  //以WRITE方式打开file, 如果file中对应的文件不存在，创建新文件
			
			for (var i:int = 0; i < allnumS.length; i++) 
			{
				fileStream.writeUTFBytes(allnumS[i]+"\r\n");
			}
//			
//			for (var j:int = 0; j < paochuArr.length; j++) 
//			{
//				fileStream.writeUTFBytes(paochuArr[j]+"\r\n");
//			}
			
			
			fileStream.close(); //完成写入，这时我们打开桌面的test.txt可以看到内容。 
			
			                                                  
			var file2:File = File.desktopDirectory.resolvePath("AppearNum.txt")  //尝试从系统桌面获取test.xml文件。 
			var fileStream2:FileStream = new FileStream(); // 创建FileStream 对象，用于读写文件 
			fileStream2.open(file2,FileMode.WRITE);  //以WRITE方式打开file, 如果file中对应的文件不存在，创建新文件
			
			for (var i2:int = 0; i2 < paochuArr.length; i2++) 
			{
				fileStream2.writeUTFBytes(paochuArr[i2]+"\r\n");
			}
			//			
			fileStream2.close(); //完成写入，这时我们打开桌面的test.txt可以看到内容。 
			
		}
		
//		private function ff4():void{
////			var n:int=1;
////			for (var j:int = 0; j <9; j++) 
////			{
//				
////				const testNum:String="0"+String(n++);
//			   const testNum:String="11";
//				var zcs:int=numVer.length;
//				var zhen:int=0;
//				
//				for (var i:int = 0; i < zcs; i++) 
//				{
//					var currNumarr:Array=numVer[i].number.split(" ");
//					if(currNumarr.indexOf(testNum)>=0){
//						zhen++;
//					}
//				}
//				
//				trace("总共期数="+zcs);
//				trace("测试的数="+testNum);
//				trace("出现的期数="+zhen);
//				trace("出现的比值="+zhen/zcs);
////			}
//			
//		}
//		private function myfun1():void{
//			var zcs:int=numVer.length;
//			
//			
//			var heightUnit:Number=this.stage.stageHeight/11;
//			var widthUnit:Number=this.stage.stageWidth/78;
//			
//			var heightBeginPoint:Number=this.stage.stageHeight;
//			var widthBeginPoint:Number=0;
//			
//			this.graphics.lineStyle(2);
//			this.graphics.moveTo(widthBeginPoint,heightBeginPoint);
//			
//			var step:int=1;
//			var wei:int=4;
//			for (var i:int = 0; i < zcs; i++) 
//			{
//				var currNumarr:Array=numVer[i].number.split(" ");
//				var currNum:int=int(currNumarr[wei]);
//				var currXPoint:Number=widthUnit*step++;
//				
//				var currYPoint:Number=heightUnit*currNum;
//				this.graphics.lineTo(currXPoint,currYPoint);
//				this.graphics.drawCircle(currXPoint,currYPoint,2);
//			}
//		}
//		private function myfun2():void{
//			var noNumArr:Array=new Array();
//			var str1:String;
//			var str2:String;
//			var str3:String;
//			for (var i:int = 1; i < 12; i++) 
//			{
//				str1=String(i)+",";
//				for (var j:int = i+1; j < 12; j++) 
//				{
//					str2=String(j)+",";
//					for (var k:int = j+1; k < 12; k++) 
//					{
//						str3=String(k);
//						var s:String=str1+str2+str3;
//						noNumArr.push(s);
//						str3=new String();
//						//trace(noNumArr);
//					}
//					
//					str2=new String();
//					
//				}
//				str1=new String();
//				
//			}
//			
//			//trace(noNumArr.length)
//			for (var i2:int = 0; i2 < noNumArr.length; i2++) 
//			{
//				var tarr:Array=noNumArr[i2].split(",");
//				var t:int=0;
//				for (var i3:int = 0; i3 < tarr.length; i3++) 
//				{
//					t+=int(tarr[i3])
//				}
//				trace(noNumArr[i2]+"="+t);
//			}
//			
//		}
//		private function  test169():void{
//			
//			
//		}
	}
}